//package com.dataseek.iot.core.config;
//
//import lombok.Getter;
//import lombok.Setter;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import redis.clients.jedis.JedisPool;
//import redis.clients.jedis.JedisPoolConfig;
//
//import java.util.Objects;
//
///**
// * @author cc
// * @Title: redis 配置
// * @Description: redis 配置
// * @date 2021/9/411:51 上午
// * @since 1.0
// */
//@Slf4j
//@Configuration
//@ConfigurationProperties(prefix = "redis")
//@Getter
//@Setter
//public class JedisConfig {
//
//    @Value("${redis.host}")
//    private String host;
//
//    @Value("${redis.port}")
//    private int port;
//
//    @Value("${redis.password}")
//    private String password;
//
//
//    @Value("${redis.pool.max-active}")
//    private int maxActive;
//
//    @Value("${redis.pool.max-wait}")
//    private int maxWait;
//
//    @Value("${redis.pool.max-idle}")
//    private int maxIdle;
//
//    @Value("${redis.pool.min-idle}")
//    private int minIdle;
//
//    @Bean
//    public JedisPool redisPoolFactory() {
//        try {
//            JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
//            jedisPoolConfig.setMaxIdle(maxIdle);
//            jedisPoolConfig.setMaxWaitMillis(maxWait);
//            jedisPoolConfig.setMaxTotal(maxActive);
//            jedisPoolConfig.setMinIdle(minIdle);
//            // 密码为空设置为null
//            if (Objects.nonNull(password)) {
//                password = null;
//            }
//            JedisPool jedisPool = new JedisPool(jedisPoolConfig, host, port, 30000, password);
//            log.info("初始化Redis连接池JedisPool成功!地址: " + host + ":" + port);
//            return jedisPool;
//        } catch (Exception e) {
//            log.error("初始化Redis连接池JedisPool异常:" + e.getMessage());
//        }
//        return null;
//    }
//
//}
